package com.akk.config.schedule;

import com.akk.task.ScheduledTasks;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;


/** 定时任务统一配置*/
@Configuration
@EnableScheduling // 启用定时任务
public class SchedulingConfig {

    //@Scheduled(cron = "0/20 * * * * ?") // 每20秒执行一次 test用例
    @Autowired(required = false)
    private ScheduledTasks scheduledTasks;

    private final Logger logger = LoggerFactory.getLogger(getClass());

//    @SysLog("定时短信还款通知")
//    @Scheduled(cron = "0 0 8 * * ?") // 每天 8点执行一次 并添加到系统日志
//    public void sendMsg() {
//        logger.info(">>>>>>>>>>>>> 定时短信还款短信提醒通知开始执行>>>>>>>");
////        scheduledTasks.sendMsg();
//        logger.info(">>>>>>>>>>>>> 定时短信还款短信提醒通知执行完成>>>>>>>");
//    }

    @Scheduled(cron = "0 0 9 * * ?")
    public void queryIncreRecord(){
        logger.info(">>>>>>>>>>>>> 增值记录查询定时任务开始执行 >>>>>>>");
        scheduledTasks.sendRecordMail();
        logger.info(">>>>>>>>>>>>> 增值记录查询定时任务执行结束 >>>>>>>");
    }

    @Scheduled(cron = "0 59 23 * * ?")
    public void delOrder(){
        logger.info(">>>>>>>>>>>>> 删除未支付订单定时任务开始执行 >>>>>>>");
        scheduledTasks.delOrder();
        logger.info(">>>>>>>>>>>>> 删除未支付订单定时任务执行结束 >>>>>>>");
    }
}
